package com.atguigu.ucenter.service;

import com.atguigu.common.cron.bean.PageListBean;
import com.atguigu.ucenter.entity.Member;
import com.atguigu.ucenter.entity.vo.LoginVo;
import com.atguigu.ucenter.entity.vo.RegisterVo;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 * 会员表 服务类
 * </p>
 *
 * @author Panghl
 * @since 2021-02-03
 */
public interface MemberService extends IService<Member> {

    /**
     * 登录方法
     * @param loginVo
     * @return
     */
    String login(LoginVo loginVo);

    /**
     * 注册
     * @param registerVo
     */
    void register(RegisterVo registerVo);

    /**
     * 获取用户信息
     * @param memberId
     * @return
     */
    Member getMemberInfo(String memberId);

    /**
     * 根据openId获取用户信息
     * @param openid
     * @return
     */
    Member getOpenIdMember(String openid);

    /**
     * 获取当天注册总人数
     * @param day
     * @return
     */
    Integer countRegister(String day);

    /**
     * 修改签名信息
     * @param member
     */
    void editInfo(Member member);

    /**
     * 我的课程
     * @param pageNo
     * @param pageSize
     * @param memberId
     * @return
     */
    PageListBean queryCoursesByMemberId(Integer pageNo, Integer pageSize, String memberId);
}
